package com.easyfile.easyfilemaster.utils;

import cn.hutool.crypto.SecureUtil;
import org.springframework.util.DigestUtils;

/**
 * Md5密码工具类
 * @author Chenpeman
 */
public class Md5Util {
    /**
     * 将密码按照加密算法加密
     * 加密算法：密码左右两边加盐，循环加密3次
     * @param password 待加密的密码
     * @param salt     盐值
     * @return 加密后的密码
     */
    public static String getMd5Password(String password,String salt){
        for (int i = 0; i < 3; i++) {
            password= SecureUtil.md5(salt + password + salt);
        }
        return password;
    }

    /**
     * 检验密码是否匹配
     * @param currentPassword  未加密的密码
     * @param originalPassword 加密后的密码
     * @param salt             盐值
     * @return 判断结果
     */
    public static boolean checkPassword(String currentPassword,String originalPassword,String salt){
        return (getMd5Password(currentPassword,salt).equals(originalPassword));
    }
}
